ποΈGitΠ―ΡΠ°ποΈ
docs/gl-rES/user/desktop.md renovate/fastlane-2.x-lockfile (056eed64) Text, 9.42 KB
title: Desktop App
parent: User Guide
nav_order: 14
last_updated: 2026-08-30
description: Install and use the Meshtastic Desktop app on Linux, macOS, and Windows β connections, feature parity, and keyboard shortcuts.
aliases:
β’ desktop
β’ linux
β’ macos
β’ windows
β’ jvm
Desktop App
This page covers installing the Meshtastic desktop app, connecting a radio, and how it differs from Android. The desktop app shares its core codebase with Android via Kotlin Multiplatform, so most features work identically across Linux, macOS, and Windows.
Installation
Linux
β’ Or install from Flathub: T383838flatpak install flathub org.meshtastic.MeshtasticDesktop
β’ Or build from source using T383838./gradlew :desktopApp:run
macOS
Windows
β’ Or build from source
Connecting Your Radio
USB Serial (Primary)
The most reliable connection method on desktop:
Connect your radio via USB. The app detects the serial port automatically; if it doesn't, select the port from the Connect menu.
TCP/IP
For network-connected radios:
1. Enter the radio's IP address and port (default: 4403).
2. Click Connect.
Bluetooth (BLE)
Bluetooth Low Energy is supported on desktop via the Kable library:
1. Ensure your system has a Bluetooth adapter. The app scans for nearby Meshtastic radios automatically.
2. Select your radio from the Connect screen.
Feature Parity
ββββββββββββββββββββββββββββββββββ¬ββββββββββ¬ββββββββββ¬ββββββββββββββββββββββββββββββββββββββββββββββ
β Feature β Android β Desktop β Notes β
ββββββββββββββββββββββββββββββββββΌββββββββββΌββββββββββΌββββββββββββββββββββββββββββββββββββββββββββββ€
β Messaging β β β β β Full parity β
β Node List β β β β β Full parity β
β Map β β β β β Interactive MapLibre map, with base map anβ¦ β
β Map layers (T383838.kml/T383838.kmz/GeoJSON) β β β β β Same layer store and sheet as Android; impβ¦ β
β Site Planner β β β β* β *Opens in your browser on desktop; the estβ¦ β
β Settings β β β β β Full parity β
β Bluetooth (BLE) β β β β β Via Kable on desktop β
β Firmware Update β β β β β In-app USB, BLE, and Wi-Fi (ESP32) update β¦ β
β Notifications β β β β β Native OS notifications β
β Widgets β β β β β Android-only β
β AI Assistant (Chirpy) β β* β β β Google flavor Android only β
β App Functions (system AI) β ββ β β β Google flavor Android only β
ββββββββββββββββββββββββββββββββββ΄ββββββββββ΄ββββββββββ΄ββββββββββββββββββββββββββββββββββββββββββββββ
\*Chirpy AI requires Android 14+ on Google flavor builds with supported hardware.
β App Functions exposes app actions to the Android system AI on Google flavor builds. See App Functions.
UI Differences
The desktop app uses the same Compose Multiplatform UI with adaptations for larger screens and desktop interaction.
Keyboard Shortcuts
Shortcuts use β (Command) on macOS and Ctrl on Windows and Linux. (The Super / Windows key is not bound.)
ββββββββββββ¬βββββββββββββββββββββββββ
β Shortcut β Action β
ββββββββββββΌβββββββββββββββββββββββββ€
β β/Ctrl+Q β Quit the app β
β β/Ctrl+, β Open Settings β
β β/Ctrl+1 β Switch to Messages tab β
β β/Ctrl+2 β Switch to Nodes tab β
β β/Ctrl+3 β Switch to Map tab β
β β/Ctrl+4 β Switch to Connect tab β
β β/Ctrl+/ β Open About β
ββββββββββββ΄βββββββββββββββββββββββββ
Window & System Tray
β’ Window resizing β responsive layout adapts to window dimensions
β’ System tray β closing the window minimizes to the system tray for background mesh operation. On a desktop environment with no tray, there is nowhere to minimize to, so closing quits the app instead
β’ Tray menu β right-click the tray icon to show window or quit
β’ Mouse interaction β hover states and standard desktop navigation
Notification Preferences
The desktop app provides in-app toggles for controlling which notifications are shown. Find them in the App Notifications section of the Settings screen: Direct message notifications, New node notifications, and Low battery notifications.
Built-in Documentation Browser
The desktop app includes a built-in documentation browser for quick access to help content without leaving the app.
The browser supports full-text search across all documentation:
Individual doc pages render with full formatting:
Building from Source
T282828
git clone https://github.com/meshtastic/Meshtastic-Android.git
Tffa657cd Meshtastic-Android
./gradlew :desktopApp:run
Requirements:
β’ JDK 25 (Gradle can provision the toolchain itself via foojay)
β’ No Android SDK required for desktop-only builds
Known Limitations
β’ Offline tile downloads and local T383838.mbtiles archives are not available on desktop.
β’ T383838.kml/T383838.kmz/GeoJSON layer import works β see
Map & Waypoints. Site Planner opens in your browser
rather than in the app; to bring its coverage estimate onto the map, click the transmitter pin
in the browser and use the planner's GeoJSON export, then add the file as a layer β not the KML
export, which is a ground-overlay image this map cannot draw. Custom network tile sources work
too β see Map & Waypoints
β’ The USB maintenance flow β nRF52/RP2040 factory erase and bootloader upgrade β is Android-only, and the
desktop app does not offer it. Use the Web Flasher instead
β’ Some Android-specific features (widgets, specific notification channels) are unavailable
β’ Performance may vary on low-spec hardware running Compose Desktop
β’ BLE bonding is not yet supported on desktop (pairing works without bonding)
Related Topics
β’ Connections β connection methods overview
β’ Firmware Updates β in-app USB, BLE, and Wi-Fi update all work the same as on Android
β’ Map & Waypoints β base maps, layers, custom tile sources, and what the desktop map does not do
Served by rngit 1.5.2 - Generated in 0.04s